package com.wang.service;

import com.wang.model.ProductMessage;
import com.wang.request.LockProductRequest;
import com.wang.util.JsonData;
import com.wang.vo.ProductVO;

import java.util.List;
import java.util.Map;

public interface ProductService {

    /**
     * 分页查询商品列表
     * @param page
     * @param size
     * @return
     */
    Map<String, Object> pageProductList(Integer page, Integer size);

    /**
     * 根据商品ID查询商品详情
     * @param productId
     * @return
     */
    ProductVO findByProductId(Long productId);

    /**
     * 批量获取商品详情
     * @param productIds
     * @return
     */
    List<ProductVO> findBYProductIdBatch(List<Long> productIds);

    /**
     * 锁定商品库存
     * @param lockProductRequest
     * @return
     */
    JsonData lockProductStock(LockProductRequest lockProductRequest);

    /**
     * 释放商品库存
     * @param productMessage
     * @return
     */
    boolean releaseCouponRecord(ProductMessage productMessage);
}
